namespace mplat {

    export var plat: IPlatform;

    /** 初始化平台，调用即可，内部会自动判断当前所在的小游戏宿主平台 */
    export function initSdk() {
        // 这里要判断是使用什么平台的platsdk
        if (!window || !window.navigator) return;
        let u = window.navigator.userAgent || '';
        if (u.indexOf('OPPO') > -1 && u.indexOf('MiniGame') > -1) {
            // oppo
            plat = new OppoPlatform()
        } else if (u.indexOf('VVGame') > -1) {
            // vivo
            plat = new VivoPlatform()
        } else if (u.indexOf("MiniGame") > -1 && window['qq']) {
            // qq
        } else if (u.indexOf('OPPO') == -1 && u.indexOf("MiniGame") > -1 && window['wx']) {
            if (window['tt']) {
                // tt
            } else if (window['bl']) {
                // bili
            } else {
                // wx
                plat = new WxPlatform();
            }
        } else if (window['mz']) {
            // mz
            plat = new MzPlatform();
        } else if (u.indexOf('QuickGame') > -1 && !window['mz']) {
            // xm
            plat = new XmPlatform();
        } else if (u.indexOf("SwanGame") > -1) {
            // bd
        } else if (u.indexOf('AlipayMiniGame') > -1 && window['my']) {
            // alipay
        } else {
            // web
            plat = new WebPlatform()
        }
    }

    if (window) {
        window['mplat'] = mplat;
    }
}